package com.ptu.spzx.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.ptu.spzx.domain.Class.Classes;
import com.ptu.spzx.domain.Class.ClassesCourse;
import com.ptu.spzx.domain.Class.dto.ClassesDTO;
import com.ptu.spzx.domain.Delete.DeleteIds;
import com.ptu.spzx.model.entity.system.SysDept;
import com.ptu.spzx.model.entity.system.SysUser;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author YT
 * @since 2024-01-28
 */

public interface IClassesCourseService extends IService<ClassesCourse> {
    void updateClass(ClassesDTO classesDTO);


    void deleteBatchClassByIds(DeleteIds deleteIds);


    void addClass(ClassesDTO classesDTO);

    PageInfo<SysDept> findByPage(Integer pageNum, Integer pageSize, String keyWord, Long courseId);

    PageInfo<SysUser> findAllStuByClass(List<Long> classIds, Integer pageNum, Integer pageSize);

    PageInfo<SysUser> findAllStuByCourse(List<Long> courseIds, Integer pageNum, Integer pageSize);

    PageInfo <SysUser> findAllStuByExam(Long examId, Integer pageNum, Integer pageSize);

    PageInfo<SysDept> getClassByCourse(Long courseId, Integer pageNum, Integer pageSize);
}
